package com.zzq.base.awesome.utils;

import com.zzq.base.awesome.entity.CommonData;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class FileUtils {

	/**
	 * 获取文件后缀
	 * @param fileName
	 * @return
	 */
	public static String getSuffixByPoint(String fileName){
		return fileName.substring(fileName.lastIndexOf("."));
	}

	/**
	 * 获取文件后缀
	 * @param fileName
	 * @return
	 */
	public static String getSuffixBySplite(String fileName){
		return fileName.substring(fileName.lastIndexOf(CommonData.LINUXFILEPATHSPLITE) + 1 );
	}

	/**
	 * 生成新的文件名
	 * @param fileOriginName 源文件名
	 * @return
	 */
	public static String getFileName(String fileOriginName){
		return SystemUtils.getUUID() + getSuffixByPoint(fileOriginName);
	}

	/**
	 * 生成新的文件名
	 * @param fileOriginName 源文件名
	 * @return
	 */
	public static String getFileOriginName(String fileOriginName){
		return  System.currentTimeMillis()+ "-" +(fileOriginName);
	}
	/**
	 * 生成新的文件名
	 * @param savePath 文件的保存地址
	 * @param file 要保存的文件
	 * @return
	 */
	public static boolean saveFile(String savePath, MultipartFile file) {
		File dest = new File(savePath);
		//判断文件父目录是否存在
		if(!dest.getParentFile().exists()){
			dest.getParentFile().mkdir();
		}
		try {
			//保存文件
			file.transferTo(dest);
			return true;
		} catch (IOException e) {
			e.printStackTrace();
			return false;
		}
	}

}
